<?php
namespace app\admin\controller;
use app\admin\model\Admin;
use think\Request;
use think\Session;
class Login extends Base {
    /*
     * 后端登录
     */
    public function login(){
       return view("login/login");  //渲染登录表单视图
    }
    /*
     * 实现后端登录逻辑
     * 参数：Request $request
     */
    public function tologin(Request $request){
        //接收用户提交的数据
        $login_info = $request->post();
        //与数据库中的数据
        $res = Admin::where(["username"=>$login_info["username"],"password"=>md5($login_info['password'])])->field("password",true)->find();
        //验证用户
        if($res){
            //判断用户是否允许登录（status的值:1表示可以正常登录，2禁止登录）
            if($res["status"] == 2){
                $this->error("该用户无法登录，请联系管理员");
            }else{
                //修改用户信息，更新IP地址及最后登录时间
                $time = time();
                $ip = $_SERVER["REMOTE_ADDR"];
                Admin::update(["id" => $res["id"],"login_time" =>$time,"login_ip" => $ip]);
                //添加Session
                $res["login_time"] = $time;
                $res["login_ip"] = $ip;
                //将用户信息添加到Session中国
                Session::set("user_info");
                $this->success("登录成功","index/index");
            }
        }else{
            $this->error("用户名或密码错误");
        }
    }
    /*
     * 安全退出
     */
    public function exits(){
        Session::Clear(); //清空所有Session信息
        $this->redirect("Login/login"); //重定向到后台登录页
    }
}